<?php


namespace App\Exports;


use Illuminate\Contracts\Support\Responsable;
use Maatwebsite\Excel\Concerns\Exportable;
use Maatwebsite\Excel\Concerns\FromArray;
use Maatwebsite\Excel\Concerns\WithColumnWidths;
use Maatwebsite\Excel\Concerns\WithHeadings;
use Maatwebsite\Excel\Concerns\WithMapping;

class AnalyseExport implements FromArray, WithMapping, WithHeadings, Responsable
{
    use Exportable;
    protected $data;
    private $fileName;
    public function __construct(array $data)
    {
        $this->data     = $data; // 实例化该脚本的时候，需要传入要导出的数据
        $this->fileName = date('YmdHis') . '_Financial_project.xlsx'; // 指定导出的文件名
    }

    public function array(): array // 返回的数据
    {
        return $this->data;
    }
//    public function columnWidths(): array
//    {
//        return [
//            'A' => 10,
//            'B' => 10,
//            'C'=>10
//        ];
//    }
    public function map($value): array // 指定excel中每一列的数据字段
    {
        return [
            $value['name'],
            $value['price'],
            $value['sale_num'],
            $value['browse'],
            $value['num'],
            $value['sale'],
        ];
    }

    public function headings(): array // 指定excel的表头
    {
        return [
            '商品名',
            '商品价格',
            '銷量',
            '瀏覽量',
            '庫存',
            '銷售額'
        ];
    }
}
